package com.desksoft.ecommerce.util.html.element;

import java.io.Serializable;

import org.dom4j.Element;

/***************************************
 * 版权所有：杭州迪科软件 保留所有权利
 * 创建日期: 
 * 创建作者：luoy
 * 文件名称：页面Js事件元素
 * 版本：
 * 功能：
 * 最后修改时间：
 * 修改记录：
 *****************************************/
public class PageEventElement implements Serializable {

	/**
	 * 绑定事件的控件ID
	 */
	protected String id;
	
	/**
	 * Js事件类型，JQuery类型
	 */
	protected String type;
	
	
	/**
	 * 事件函数体
	 */
	protected String function;
	
	public PageEventElement(Element eventElement){
		Element funElmt = eventElement.element("function");
		String fun = funElmt.getText();
		String type = eventElement.attributeValue("type");
		
		this.type = type;
		this.function = fun;
	}
	
	/**
	 * 
	 * @param type				事件类型
	 * @param keyCode			键盘按键类型
	 * @param button			鼠标按键类型
	 * @param functionName		事件函数名称
	 * @param function			事件函数体
	 */
	public PageEventElement(String id, String type, String function) {
		super();
		this.id = id;
		this.type = type;
		this.function = function;
	}

	public String getType() {
		return type;
	}

	public void setType(String type) {
		this.type = type;
	}

	public String getFunction() {
		return function;
	}

	public void setFunction(String function) {
		this.function = function;
	}
	
	/**
	 * 写入页面事件代码，JQuery格式
	 */
	public String writeEventCode(){
		StringBuffer evtCode = new StringBuffer();
		evtCode.append("$(idp() + \"#" + this.id + "\").bind(\"" + this.getType() + "\",function(event){");
		evtCode.append(this.getFunction());
		evtCode.append("});");
		return evtCode.toString();
	}
}
